package com.example.demo.dao;

import com.example.demo.model.ShortLink;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;

import java.util.Optional;

/**
 * @author chxbca
 */

public interface IShortLinkDao extends JpaRepository<ShortLink, Integer>, JpaSpecificationExecutor<ShortLink> {

    /**
     * 根据长链接找短链接
     *
     * @param longLink 长连接
     * @return 短链接Optional
     */
    Optional<ShortLink> findByLongLink(String longLink);

    /**
     * 根据短链接找长连接
     *
     * @param shortLink 短连接
     * @return 短链接Optional
     */
    Optional<ShortLink> findByShortLink(String shortLink);

    /**
     * 验证短链接是否存在
     *
     * @param shortLink 要查询的短链接
     * @return 结果
     */
    boolean existsByShortLink(String shortLink);

}
